Career 2025 2024 2023 2022 2021 2020 2019 2018 2017 2016 2015 2014 2013 2012 2011 2010 2009 2008 2007
All Rounds Final 1/2 1/4 First Second Third Fourth Pre-q Rubber 1 Rubber 2 Rubber 3 Rubber 4 Rubber 5 Robin Bronze Q3 N/A Q2 Q1 ER Q4 CR QF Q5 N/A
All Courts Acrylic N/A Clay Grass Carpet Hard I.hard
All Tour Wimbledon - London Porto Challenger Western & Southern Open - Cincinnati U.S. Open - New York Prague 3 Challenger Davis Cup, Group I, 1R, AUT-POR 1-3 Lisbon Challenger Shanghai Rolex Masters - Shanghai Bratislava 2 Challenger Erste Bank Open - Vienna Nitto ATP Finals - Turin Rolex Paris Masters - Paris BNP Paribas Open - Indian Wells Oeiras 1 Challenger Australian Open - Melbourne Davis Cup, World Group, Q, FIN-POR 3-1 Miami Open - Miami Dubai Duty Free Tennis Championships - Dubai Western & Southern Open - Cincinnati Millennium Estoril Open - Estoril French Open - Paris Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome Terra Wortmann Open - Halle Olympics - Paris Wimbledon - London National Bank Open - Montreal U.S. Open - New York Laver Cup - Berlin Australian Open - Melbourne China Open - Beijing Shanghai Rolex Masters - Shanghai Rolex Paris Masters - Paris Nitto ATP Finals - Turin Dubai Duty Free Tennis Championships - Dubai Monte-Carlo Rolex Masters - Monte-Carlo National Bank Open - Toronto Mutua Madrid Open - Madrid BNP Paribas Open - Indian Wells Open 13 Provence - Marseille National Bank Open - Toronto Terra Wortmann Open - Halle Miami Open - Miami Internazionali BNL d'Italia - Rome U.S. Open - New York Cassis Challenger Rolex Paris Masters - Paris Libema Open - 's-Hertogenbosch Wimbledon - London Cincinnati Open - Cincinnati China Open - Beijing Shanghai Rolex Masters - Shanghai Hangzhou Open - Hangzhou Spain F17 Spain F18 Spain F19 Spain F22 Spain F23 Spain F26 Spain F27 Spain F34 Spain F35 Portugal F4 Portugal F5 Spain F38 Spain F39 Spain F40 Spain F41 Spain F5 Spain F6 Spain F8 Spain F9 Spain F10 Spain F13 Spain F18 Spain F19 Spain F20 Spain F30 Spain F31 Spain F34 Portugal F7 Portugal F8 Spain F39 Spain F40 Spain F41 Spain F42 United Arab Emirates F1 United Arab Emirates F2 Spain F3 Spain F4 Spain F5 Spain F7 Spain F10 Spain F11 Turkey F4 Turkey F5 Turkey F6 Spain F16 Spain F17 Spain F18 Spain F20 Spain F21 France F12 Spain F28 Spain F29 Spain F30 Portugal F4 Portugal F5 Spain F35 Spain F37 Spain F3 Spain F4 Italy F2 Italy F3 Spain F16 Spain F17 Spain F18 Spain F19 Spain F20 Italy F17 Spain F31 Spain F35 Spain F36 France F4 Russia F1 Spain F14 Spain F15 Spain F36 Spain F37 Spain F38 France F15 Georgia F1 Georgia F2 Georgia F3 Russia F8 France F18 France F19 Estonia F3 Tunisia F3 Tunisia F4 Italy F2 France F4 France F6 Tunisia F12 Tunisia F13 Tunisia F14 France F9 Russia F1 Russia F4 France F11 France F13 France F14 Belarus F1 Belarus F2 France F21 Germany F18 Switzerland F1 Switzerland F2 France F4 Spain F33 Spain F3 Spain F17 Romania F11 Romania F10 Spain F33 France F3 France F7 Mamaia Challenger - Constanta Orbetello Challenger Seville Challenger Tarragona Challenger Rennes Challenger Tanger Challenger Rabat Challenger Tallahassee Challenger Reggio Emilia Challenger Tampere Challenger Istanbul Challenger Manerbio Challenger Seville Challenger Izmir Challenger Sao Paulo Challenger Heilbronn Challenger Courmayeur Challenger Quimper Challenger Casablanca Challenger Guangzhou Challenger Pingguo Challenger Furth Challenger Marburg Challenger Braunschweig Challenger Tampere Challenger Segovia Challenger San Marino Challenger San Sebastian Challenger Trnava Challenger Madrid Challenger Eckental Challenger Meknes Challenger Casablanca Challenger Marrakech Challenger Tampere Challenger Sibiu Challenger Cordenons Challenger Como Challenger Alphen Challenger Trnava Challenger Bordeaux Challenger Furth Challenger Kosice Challenger Poznan Challenger Guimaraes Challenger St. Remy Challenger Bangkok Challenger Shanghai Challenger Nanchang Challenger Kaohsiung Challenger Bangkok Challenger Kazan Challenger Raanana Challenger Savannah Challenger Bordeaux Challenger Ilkley Challenger Todi Challenger Astana Challenger Portoroz Challenger St. Remy Challenger Orleans Challenger Eckental Challenger Bratislava Challenger Brest Challenger Playford Challenger Antalya 2 Challenger Mallorca Challenger Biel Challenger Orleans Challenger Alicante Challenger Tenerife Challenger Helsinki Challenger Quimper Challenger Phoenix Challenger Girona Challenger Aix En Provence Challenger Oeiras 2 Challenger Girona Challenger Estoril Open - Estoril Estoril Open - Estoril If Stockholm Open - Stockholm Open 13 - Marseille Estoril Open - Estoril German Tennis Championships - Hamburg Aircel Chennai Open - Chennai Heineken Open - Auckland Open Sabadell Atlantico - Barcelona Estoril Open - Estoril Studena Croatia Open - Umag Credit Agricole Suisse Open - Gstaad Aircel Chennai Open - Chennai Apia International - Sydney VTR Open - Vina del Mar Brasil Open - Sao Paulo Copa Claro - Buenos Aires Abierto Mexicano Telcel - Acapulco Power Horse Cup - Dusseldorf Winston-Salem Open - Winston-Salem Malaysian Open - Kuala Lumpur Kremlin Cup - Moscow Valencia Open - Valencia Apia International - Sydney Open Sud de France - Montpellier Copa Claro - Buenos Aires Rio Open 500 - Rio de Janeiro Abierto Mexicano Telcel - Acapulco Grand Prix Hassan II - Casablanca Barcelona Open BancSabadell - Barcelona Portugal Open - Oeiras Power Horse Cup - Dusseldorf Gerry Weber Open - Halle Topshelf Open - 's-Hertogenbosch SkiStar Swedish Open - Bastad Kos Succhetti Tennis Cup - Cordenons Bet-at-home Open - Hamburg 84° Concurso Internacional Tenis San Sebastian - San Sebastian Vegeta Croatia Open - Umag Winston-Salem Open - Winston-Salem Moselle Open - Metz Malaysian Open - Kuala Lumpur China Open - Beijing Kremlin Cup - Moscow If Stockholm Open - Stockholm Valencia Open - Valencia Heineken Open - Auckland Open Sud de France - Montpellier ABN AMRO World Tennis Tournament - Rotterdam Open 13 - Marseille Dubai Duty Free Tennis Championships - Dubai Barcelona Open BancSabadell - Barcelona Rabat Challenger Geneva Open - Geneva Recanati Challenger Open de Nice Cote d'Azur - Nice Topshelf Open - 's-Hertogenbosch Mersin Challenger AEGON Championships - London Szczecin Challenger Kosice Challenger Aegon Nottingham Open - Nottingham Vegeta Croatia Open - Umag Credit Agricole Suisse Open - Gstaad Winston-Salem Open - Winston-Salem Malaysian Open - Kuala Lumpur Rakuten Japan Open - Tokyo Kremlin Cup - Moscow Valencia Open - Valencia St. Petersburg Open - St. Petersburg Millennium Estoril Open - Estoril ASB Classic - Auckland Open Sud de France - Montpellier ABN AMRO World Tennis Tournament - Rotterdam Open 13 - Marseille Dubai Duty Free Tennis Championships - Dubai Grand Prix Hassan II - Marrakech Barcelona Open BancSabadell - Barcelona Millennium Estoril Open - Estoril Open de Nice Cote d'Azur - Nice Topshelf Open - 's-Hertogenbosch Gerry Weber Open - Halle Aegon Nottingham Open - Nottingham Bet-at-home Open - Hamburg SkiStar Swedish Open - Bastad Konzum Croatia Open - Umag Winston-Salem Open - Winston-Salem St. Petersburg Open - St. Petersburg Rakuten Japan Open - Tokyo Kremlin Cup - Moscow Erste Bank Open - Vienna Aircel Chennai Open - Chennai ASB Classic - Auckland Open Sud de France - Montpellier Argentina Open - Buenos Aires Rio Open - Rio de Janeiro Open 13 - Marseille Dubai Duty Free Tennis Championships - Dubai Brasil Open - Sao Paulo Barcelona Open BancSabadell - Barcelona Hungarian Open - Budapest Millennium Estoril Open - Estoril Geneva Open - Geneva St. Brieuc Challenger Open Parc - Lyon Ricoh Open - 's-Hertogenbosch Gerry Weber Open - Halle AEGON Championships - London Antalya Cup - Antalya AEGON International - Eastbourne Konzum Croatia Open - Umag Suisse Open - Gstaad Citi Open - Washington Generali Open - Kitzbuhel Winston-Salem Open - Winston-Salem St. Petersburg Open - St. Petersburg Rakuten Japan Open - Tokyo European Open - Antwerp Kremlin Cup - Moscow Next Gen ATP Finals - Milan ASB Classic - Auckland Sydney International - Sydney Open Sud de France - Montpellier Garanti Koza Sofia Open - Sofia ABN AMRO World Tennis Tournament - Rotterdam Dubai Duty Free Tennis Championships - Dubai Grand Prix Hassan II - Marrakech Millennium Estoril Open - Estoril Open Parc - Lyon Ricoh Open - 's-Hertogenbosch Gerry Weber Open - Halle AEGON Championships - London Antalya Cup - Antalya AEGON International - Eastbourne Plava Laguna Croatia Open - Umag Swiss Open - Gstaad Citi Open - Washington Winston-Salem Open - Winston-Salem St. Petersburg Open - St. Petersburg Chengdu Open - Chengdu China Open - Beijing Rakuten Japan Open - Tokyo Kremlin Cup - Moscow Swiss Indoors Basel - Basel Rome Challenger Brisbane International - Brisbane Todi Challenger Kosice Challenger ASB Classic - Auckland DIEMA XTRA Sofia Open - Sofia ABN AMRO World Tennis Tournament - Rotterdam Argentina Open - Buenos Aires Rio Open - Rio de Janeiro Dubai Duty Free Tennis Championships - Dubai Brasil Open - Sao Paulo Barcelona Open Banc Sabadell - Barcelona Millennium Estoril Open - Estoril Geneva Open - Geneva Mercedes Cup - Stuttgart Libema Open - 's-Hertogenbosch Noventi Open - Halle Fever-Tree Championships - London Turkish Airlines Open Antalya - Antalya SkiStar Swedish Open - Bastad Swiss Open - Gstaad Milan Challenger Citi Open - Washington Winston-Salem Open - Winston-Salem St. Petersburg Open - St. Petersburg Chengdu Open - Chengdu Rakuten Japan Open - Tokyo Intrum Stockholm Open - Stockholm Swiss Indoors Basel - Basel ASB Classic - Auckland ABN AMRO World Tennis Tournament - Rotterdam Open 13 Provence - Marseille Dubai Duty Free Tennis Championships - Dubai Generali Open - Kitzbuhel St. Petersburg Open - St. Petersburg European Open - Antwerp Erste Bank Open - Vienna Hamburg European Open - Hamburg Cordoba Open - Cordoba ABN AMRO World Tennis Tournament - Rotterdam Argentina Open - Buenos Aires Open 13 Provence - Marseille Chile Dove Men+Care Open - Santiago Abierto Mexicano Telcel - Acapulco Cremona Challenger Serbia Open - Belgrade Millennium Estoril Open - Estoril Open Parc - Lyon Mercedes Cup - Stuttgart Noventi Open - Halle Mallorca Championships - Mallorca Hall of Fame Open - Newport Sardegna Open - Cagliari Melbourne Summer Set - Melbourne Tata Open Maharashtra - Pune Qatar ExxonMobil Open - Doha Dubai Duty Free Tennis Championships - Dubai Abierto Mexicano Telcel - Acapulco Grand Prix Hassan II - Marrakech Serbia Open - Belgrade Millennium Estoril Open - Estoril Gonet Geneva Open - Geneva Libema Open - 's-Hertogenbosch Mercedes Cup - Stuttgart Noventi Open - Halle Mallorca Championships - Mallorca Nordea Open - Bastad Swiss Open - Gstaad Generali Open - Kitzbuhel Abierto de Tenis Mifel - Los Cabos Winston-Salem Open - Winston-Salem Moselle Open - Metz Astana Open - Astana Stockholm Open - Stockholm Erste Bank Open - Vienna Tel Aviv Watergen Open - Tel Aviv Gijon Open - Gijon Adelaide International 1 - Adelaide ASB Classic - Auckland Cordoba Open - Cordoba ABN AMRO World Tennis Tournament - Rotterdam Argentina Open - Buenos Aires Rio Open - Rio de Janeiro Qatar ExxonMobil Open - Doha Dubai Duty Free Tennis Championships - Dubai Chile Dove Men+Care Open - Santiago Millennium Estoril Open - Estoril Libema Open - 's-Hertogenbosch Terra Wortmann Open - Halle Kazan Challenger Quimper Challenger Bergamo Challenger China Open - Beijing ABN AMRO Open - Rotterdam Qatar ExxonMobil Open - Doha Citi Open - Washington San Juan Challenger Rio De Janeiro Challenger Porto Alegre Challenger Almaty Open - Almaty Montevideo Challenger Erste Bank Open - Vienna Meknes Challenger Marrakech Challenger Leon Challenger Kazan Challenger Tunis Challenger Bangkok Challenger Turin Challenger Tallahassee Challenger Moscow Challenger Seville Challenger Rome Challenger Bordeaux Challenger Furth Challenger Mons Challenger Budapest Challenger Madrid Challenger San Benedetto Challenger Brest Challenger Oeiras 3 Challenger Mallorca Challenger Tunis Challenger Vicenza Challenger Braga Challenger BNP Paribas Open - Indian Wells Sony Open Tennis - Miami Mutua Madrid Open - Madrid Western & Southern Open - Cincinnati BNP Paribas Masters - Paris BNP Paribas Open - Indian Wells Sony Open Tennis - Miami Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome Rogers Cup - Toronto Western & Southern Open - Cincinnati Shanghai Rolex Masters - Shanghai BNP Paribas Masters - Paris BNP Paribas Open - Indian Wells Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome Western & Southern Open - Cincinnati Shanghai Rolex Masters - Shanghai BNP Paribas Open - Indian Wells Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome Western & Southern Open - Cincinnati Shanghai Rolex Masters - Shanghai BNP Paribas Masters - Paris BNP Paribas Open - Indian Wells Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome Rogers Cup - Montreal Western & Southern Open - Cincinnati Shanghai Rolex Masters - Shanghai BNP Paribas Masters - Paris BNP Paribas Open - Indian Wells Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome Rogers Cup - Toronto Western & Southern Open - Cincinnati Shanghai Rolex Masters - Shanghai BNP Paribas Masters - Paris BNP Paribas Open - Indian Wells Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome Coupe Rogers - Montreal Western & Southern Open - Cincinnati Shanghai Rolex Masters - Shanghai Internazionali BNL d'Italia - Rome Western & Southern Open - New York Rolex Paris Masters - Paris BNP Paribas Open - Indian Wells Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome Rogers Cup - Toronto Western & Southern Open - Cincinnati Rolex Paris Masters - Paris BNP Paribas Open - Indian Wells Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome National Bank Open - Montreal Western & Southern Open - Cincinnati Rolex Paris Masters - Paris BNP Paribas Open - Indian Wells Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome Ortisei Challenger Ismaning Challenger Calgary Challenger Drummondville Challenger Maia Challenger Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris French Open - Paris Cassis Challenger Bratislava Challenger Estoril Open - Estoril Qatar ExxonMobil Open - Doha Open 13 Provence - Marseille Davis Cup, Group 2, 1R, CYP-POR 3-2 Davis Cup, Group 2, PO, ALG-POR 0-5 Davis Cup, Europe/Africa Group II, 2R, POR-CYP 5-0 Davis Cup, Europe/Africa Group II, 3R, POR-BIH 3-2 Davis Cup, Group I, 1R, POR-SVK 4-1 Davis Cup, Group I, 2R, ISR-POR 3-2 Davis Cup, Group I, PO, SVK-POR 3-1 Davis Cup, Group II, 1R, POR-BEN 5-0 Davis Cup, Group II, 3R, MDA-POR 2-3 Davis Cup, Group I, 1R, SLO-POR 3-2 Davis Cup, Group I, PO, RUS-POR 4-1 Davis Cup, Group II, 1R, POR-MAR 4-1 Davis Cup, Group II, 2R, POR-FIN 4-1 Davis Cup, Group II, 3R, POR-BLR 3-2 Davis Cup, Group I, 1R, POR-AUT 1-4 Davis Cup, Group I, PO, POR-SLO 5-0 Davis Cup, World Group, 1R, SRB-RUS 4-1 Davis Cup, Group I, 1R, POR-ISR 5-0 Davis Cup, Group I, 2R, POR-UKR 4-1 Davis Cup, World Group, PO, POR-GER 2-3 Davis Cup, Group I, 2R, SWE-POR 3-2 Davis Cup, Group I, 2R, RUS-AUT 1-3 Davis Cup, Group I, PO, UKR-POR 3-1 Davis Cup, Group I, PO, RUS-BLR 3-2 Davis Cup, World Group, QR, KAZ-POR 3-1 Davis Cup, World Group, QR, SUI-RUS 1-3 Davis Cup, Group I, 1R, BLR-POR 3-2 ATP Cup - Brisbane, Perth, Sydney Davis Cup, World Group I, PO, LTU-POR 0-4 ATP Cup - Melbourne Laver Cup - Boston Davis Cup, Group I, 1R, ROU-POR 3-1 Davis Cup, Finals, Group A ATP Cup - Sydney Davis Cup, Finals, QF, RUS-SWE 2-0 Davis Cup, Finals, SF, RUS-GER 2-1 Davis Cup, Finals, F, RUS-CRO 2-0 Davis Cup, Group I, PO, POR-POL 4-0 Davis Cup, Group I, 1R, POR-BRA 3-1 St. Petersburg Open - St. Petersburg Chengdu Open - Chengdu European Open - Antwerp Open Sud de France - Montpellier Shenzhen Open - Shenzhen Swiss Indoors Basel - Basel Barcelona Open BancSabadell - Barcelona Open Sud de France - Montpellier Rogers Cup - Montreal Rogers Cup - Toronto BNP Paribas Masters - Paris Wimbledon (juniors) U.S. Open (juniors) French Open (juniors) Wimbledon (juniors) Australian Open - Melbourne All Lower level tournaments French Open - Paris Nitto ATP Finals - London Nitto ATP Finals - London Nitto ATP Finals - Turin Davis Cup, Group 2, 2R, POR-CYP 5-0 Olympics - Rio de Janeiro Davis Cup, Group I, 2R, SUI-POR 5-0 Davis Cup, World Group, PO, POR-CZE 1-3 Olympics - Tokyo Australian Open (juniors) Exhibition Diriyah Tennis Cup Nitto ATP Finals - Turin Davis Cup, Group I, PO, POR-RSA 4-0